1. Field of the Invention
The present invention relates to call handling within cellular radio communication systems and, more particularly, to the transfer and redirection of calls within said systems.
2. History of the Prior Art
Call handling within telecommunications systems has, in recent years, become increasingly sophisticated. For example, subscribers have greater numbers of call handling features available to them as a result of the implementation of more sophisticated software within modern stored-program control-switching systems. Features such as call forwarding, call waiting, and selective call blocking are now commonly incorporated into a "service profile" of each subscriber.
Cellular radio telecommunications systems have also offered increasing numbers of special subscriber features. These features are commonly provided by an operator of the cellular system. In general, each mobile telephone subscriber in a cellular system is associated with a specific "home location" to which calls for that subscriber are normally routed by the telecommunications network, based upon the directory number assigned to that subscriber. Each subscriber's home location is further associated with a particular mobile switching center (MSC) and/or a home location register (HLR) which contains a database of information about the subscriber. The database includes the service profile of that subscriber, including a list of all of the special service features to which the subscriber subscribes as well as information concerning the most likely current location of the mobile subscriber within the network. A subscriber's home MSC or HLR is consulted each time a call is received for the subscriber, and the call is routed to another location within the network if the HLR database indicates that the subscriber is currently located elsewhere.
All of the systems operating within a cellular radio telecommunications network use specific and common procedures to handle calls so that the systems can communicate with one another and behave i n a uniform fashion. These call-handling procedures are set forth in so-called "Standards" which must be complied with by the manufacturers and operators of cellular network infrastructure equipment in order to provide commonality and compatibility within the network. One such Standard used in North America is entitled "Cellular Radio-telecommunications Intersystems Operation" established by the Telecommunications Industries Association (TIA), and is often referred to as IS-41. IS-41 is hereby incorporated by reference. IS-41 provides standards through which a calling party (a so-called "A-number") is connected to a called party (a so-called "B-number"). IS-41 also provides a call-handling feature which forwards calls to a second telephone number (a so-called "C-number") in the event a call is directed to a mobile station B-number which is busy or does not answer. A "Transfer-to-Number Request" message forwards the call to a number which is pre-selected by the subscriber as a number where the call can most likely be completed. If, however, the forwarded call arrives at the C-number and goes unanswered, no further options are available, and the attempted connection fails. It would be much more desirable if the call could continue to be forwarded to a series of C-numbers until finally completed. This is not possible under the present procedures.
In U.S. Pat. No. 3,736,382 to Braun et also, a memory device is disclosed for use in a call forwarding arrangement wherein a connection directed to a station may be completed to another station arbitrarily preselected by the first station. However, there is no mention of multiple call-forwarded cases, and the invention does not, in fact, support such a technique.
U.S. Pat. No. 4,876,707 to Hashimoto discloses a telephone call-forwarding device which receives a call (or multiple calls serially) and records the calling party number(s ). The device interacts with a paging system to inform the called party that calls are being received. The called party returns a call to the device which results in connection to either an incoming call which has waited, or places an outgoing call via a dialback maneuver. However, the device is limited in that the stored numbers must be stored in the same device that accesses them, and the numbers must be accessed serially. A device is needed which overcomes each of these limitations.
U.S. Pat. No. 4,942,598 to Davis discloses a telephone answering machine which receives a call and uses the received automatic number identification (ANI) to perform several actions which may include call forwarding. The Davis machine must receive ANI information to perform its functions, and the patent is specifically limited to the use of such information. The machine is limited to single incoming calls, and again must store the forwarding numbers in the same device as has need to access them. A device is needed which overcomes each of these limitations and does not require ANI information to function.
One suggested modification of the call forwarding feature under IS-41 is the addition of a character or index parameter to the Transfer-to-Number Request message. This technique is illustrated in FIG. 1 wherein an illustrative call arrives at an MSC 11 for "Bob" from "Sam", and is sequentially forwarded by the MSC 11 to multiple C-numbers. The call arrives for Bob from Sam at step 12, and the MSC 11 specifies an index parameter at step 13 that directs an HLR 14 to retrieve a first C-number for Bob from the C-number list in its subscriber database. This number is returned to the MSC 11 at step 15, and an attempt is made to forward the call. It can be seen that when an attempt to forward the call to the first C-number for Bob fails at step 16, the MSC 11 changes the index parameter to fetch a second C-number for Bob at step 17. The second C-number for Bob is returned to the MSC 11 at step 18, and at step 19 another attempt is made to forward the call. This sequence is repeated at step 20 until either the call is completed or the C-number list is exhausted.
Although such a solution is technically feasible within the current signalling protocol, this approach has several disadvantages. First, this configuration would not allow the HLR 14 alone to coordinate multiple calls to the same number, but would require the intervention of the MSC 11 through which the call was being routed. The MSC 11, therefore, would have to maintain additional state information about a call in progress, that is, data concerning which C-number is being requested. This would require additional software in multiple MSCs 11, thereby making it more difficult and expensive to implement. Second, the addition of an index parameter into the IS-41 signalling protocol would introduce formal state information into this transaction oriented protocol. Such a modification to this industry standard would be controversial, and would require considerable time and expense to study its potential far-reaching consequences and gain approval from various standards committees. Third, when high volumes of simultaneous calls come into a cellular group, where some mobile phones are "busy", "idle", "inactive", or providing "no answer", the index technique is wholly inadequate to handle the resulting call-forwarding scenarios. Finally, it is only possible to implement the index technique when the MSC is a single node; the index technique will not work when several MSCs are networked.
FIG. 2 illustrates the situation in which the index technique is used to forward two calls which arrive near simultaneously for "Bob" from both "Sam" and "Tom". At step 21 a call arrives for Bob from Sam, and the MSC 11 specifies an index parameter at step 22 that directs the HLR 14 to retrieve the first C-number for Bob from its subscriber database. Before that C-number can be returned to Sam, however, another call arrives for Bob from Tom at step 23. Once again, the MSC specifies the index parameter at step 24 that directs the HLR 14 to retrieve the first C-number for Bob from its subscriber database. Thereafter, at step 25, the first number on the C-number list is returned to the MSC 11 which, in this illustration, fails in its attempt to forward the call for Sam at step 26. Near simultaneously, the first number on the C-number list is also returned at step 27 to the MSC 11 in response to the call from Tom. The MSC 11 attempts to forward this call at step 28, but this attempt will always fail since the call from Sam was forwarded to the same C-number only moments before.
Steps 29 and 31 illustrate that if both attempts to forward calls to the first C-number fail, then the MSC 11 will send two messages to the HLR 14 specifying the index parameter that retrieves the second C-number for Bob from its subscriber database. In steps 32 and 33, the second C-number is sent to the MSC 11 once for the call from Sam and once for the call from Tom. In steps 34 and 35, the MSC 11 attempts to forward both the call from Sam and the call from Tom to the second C-number. Since the calls are being transacted nearly simultaneously, the specific order of the messages illustrated could vary, but the end result is the same: only one of these calls can be successfully completed. As shown at step 36, this process may be repeated until the C-number list is exhausted. Therefore, when the index-parameter technique is used to forward multiple incoming calls, there is a waste of time and network resources since the MSC 11 attempts to forward multiple calls to the same C-number.
A more serious problem arises when features are implemented which allow a high number of near simultaneous calls to occur, and these calls arrive on numerous "gateway" MSCs. Since multiple MSCs may be attached to a single HLR (FIG. 4), more than one MSC may be transacting calls to the same party. Therefore, effective call-forwarding coordination cannot be performed by utilizing index parameters in the MSCs. Call-forwarding coordination must take place in the HLR.
Thus, a need still exists to provide a means for allowing call transfer to a sequence of numbers on a C-number list, totally under the control of the HLR, and without involving additional parameter storage or switching action by the MSC. With the current system, if a second Transfer-to-Number Request message is issued in the HLR, only a single C-number may be accessed. Additional support, for example, a counting mechanism for traversing a linked list of C-numbers, is needed. Additional software overhead is most efficiently added at the HLR rather than in all of the mobile switching centers (MSCs). The present invention uses a preexisting Billing ID number to uniquely identify calls arriving at the MSC. This unique identifier is passed to the HLR where it is translated into a pointer for sequentially forwarding calls to the numbers on a C-number list until the call is successfully completed or the C-number list is exhausted.